Chemometric modeling software

ABSTRACT

A method for integrating chemometric model development and chemometric model application to a process system, the method comprising: (1) receiving spectral data from a process system, the received spectral data corresponding to material being monitored by the process system; (2) receiving user input through at least one graphic user interface; (3) developing at least one chemometric model at least partially in response to the received user input; and (4) applying at least one chemometric model to the received spectral data to thereby predict a property of the material being monitored; and wherein the developing step and the applying step are performed by an integrated software program. Systems and software related to this method are also disclosed herein.

FIELD OF THE INVENTION

This invention relates generally to chemometric analysis of materialsand, more particularly, to using an integrated computer program todevelop and run chemometric models related to pharmaceuticalmanufacturing.

BACKGROUND OF THE INVENTION

During the manufacture of an active pharmaceutical ingredient (API) by aprocess system, the materials in the process system undergo a series ofchemical reactions that necessarily alter the composition of thematerials in the process system. For instance, on occasion, the processsystem is cleaned. Typically, the cleaning process begins with theintroduction of a cleaning solvent, or agent, into the process system.The solvent is then circulated to draw into solution any residual API inthe process system. As the solvent reaches saturation with the API, itsability to draw the API into solution diminishes thereby creating a needto replace the solvent with fresh fluid. At some point, the amount ofresidual API decreases until it is no longer able to saturate a freshbatch of solvent. The cleaning may proceed beyond this point with newsolvent being introduced to draw the concentration of the API in thesystem even lower and, eventually, to a level such that the processsystem can be declared “clean” and therefore ready for a newmanufacturing run. Other process occur within the manufacture ofpharmaceutical products, such as blending and drying operations, inwhich the composition of the final materials may be altered.

Similar dynamic composition changes occur in many other process systemsnot limited to the pharmaceutical industry. For instance, processsystems such as petroleum product transport systems (i.e. pipelines)typically carry any number of products during their service life. Duringone interval a particular pipeline might be used to deliver kerosene andduring the next interval it might be used to deliver light-sweet crudeoil. Because the user of the latter delivered crude oil neither wantsnor can use the kerosene, it is desirable to determine when the leadingedge of the crude oil arrives at the delivery point or at an appropriatebranch in the pipeline.

Thus, in many process systems, it is desirable to sense the compositionof a material or a complex combinations of materials in aninstantaneous, or nearly instantaneous, (e.g., in “real-time”) manner.The ability to sense the composition allows the user of the processsystem to determine how well the process system is performing itsintended function (e.g., the creation of a pure API) and to control theprocess system (e.g., opening and closing valves to route a product tothe correct tank). One method of sensing the composition of material isby way of using a spectrometer to measure spectra of the material andderiving the material's composition from the measured spectra. Spectramay be optical spectra including electromagnetic energy in theultraviolet, visible, near infrared or infrared regions of theelectromagnetic spectrum, but are not limited to such.

Theoretically, the spectra convey to the observer all of the informationneeded to know the composition of the material and, therefore, thecurrent status of the process system (e.g. the reaction has begun or hasreached completion). In reality, as is well known, many factorscomplicate the derivation of the composition from the spectra. Thesecomplications include the presence of constituents in the material withoverlapping spectra; the presence of constituents which are partially orcompletely opaque at key wavelengths; and resolution and sensitivitylimitations of the data gathering system. Nonetheless, the observer willchoose one or more features of the spectra that indicate the property ofthe material in which the observer is interested. For a simple example,the presence of absorption at a particular wavelength may uniquelyindicate that a particular constituent is present.

For the complex spectra typically encountered in process systems,though, it is often desirable to use chemometric modeling to de-convolvethe data gathered from the spectra in order to derive the properties ofinterest to the observer. Optical spectra may be used for this purpose,but the chemometric modeling may be used to analyze any data which canbe similarly represented (e.g., a particle size distribution).Unfortunately, the currently available chemometric modeling softwareapplications are awkward and inconvenient to use (i.e., the applicationsare user-unfriendly). Typically, the existing applications require theuser to collect or prepare a large number of samples, gatherrepresentative spectra associated with each, and then analyze eachsample in a laboratory setting to determine the property of interest ofeach sample with great accuracy. Next, the user must build a separatespreadsheet or otherwise enter this data into the program that containsthe spectral data for the samples along with the analytically determinedproperties of the samples. The user then builds the chemometric model byselecting a number of the spectra for processing with the intent beingto mathematically (e.g., statistically) correlate the monitored spectrawith selected properties. Using the remaining spectra, the user thenvalidates the model by running it on the remaining unused spectra,thereby generating predictions of the property or properties of theassociated samples. A comparison of the predicted and analyticallydetermined properties reveals the model's quality (i.e. how “good” themodel is at making accurate predictions). If the comparison reveals thatthe model is not sufficiently accurate, the model must be modified orrebuilt from scratch. Upon generating a sufficiently accurate model, theuser then saves the model in a file. Subsequently, to apply this modelto an actual process system the user manually loads, or imports, thesaved model into an analyzer for real-time prediction of the impurityconcentrations for a material within the process system being monitored.Thus, the model must be built in one application and then imported intoa different application to be used. Furthermore, many chemometricmodeling programs do not support real-time prediction of properties.

If differences exist between the spectrometer used to obtain thecalibration spectra and the spectrometer used to monitor the processsystem, however, it is likely that the model will need furthermodification to produce results that are sufficiently accurate forcontrolling or monitoring a real-time process system. Those skilled inthe art of chemometric analysis understand that building the modelrequires a great deal of judgment based on the user's subjectiveunderstanding of the sample spectra, the system, and the various modelsthat the user could build. Accordingly, the user expends a significantamount of time and labor developing and modifying the model. Then, inaddition, the user must again transfer the modified model to thereal-time application. In the meantime, the process system either liesidle (thereby wasting capital) or produces sub-optimal product.

Thus a need exists to streamline the manner in which chemometric modelsof spectral data are built and modified and then used in real-timeapplications.

SUMMARY OF THE INVENTION

It is in view of the above problems that the present invention wasdeveloped. The invention provides methods, systems, and computerreadable media for performing chemometric modeling of spectral datagathered from a monitored material, and predicting material propertiesin real-time.

In a first preferred embodiment the present invention provides anintegrated computer application that uses the same processing engine fordeveloping a chemometric model and for using the chemometric model topredict values in real-time. The application interfaces with a desktopenvironment and a real-time environment. From the desktop environment,the application accepts user inputs for building the model. In contrast,from the real-time environment, the application accepts spectral datafrom a process system in which the material of interest is beingmonitored. Also, the application uses the chemometric model and thereal-time spectral input to predict a property of the material (e.g. theconcentration of an API or the type of fuel in the pipeline).

Also disclosed herein is a method for integrating chemometric modeldevelopment and chemometric model application to a process system, themethod comprising: (1) receiving spectral data from a process system,the received spectral data corresponding to a material being monitoredby the process system, (2) receiving user input through at least onegraphic user interface, (3) developing at least one chemometric model atleast partially in response to the received user input, and (4) applyingat least one chemometric model to the received spectral data to therebypredict a property of the material being monitored, and wherein thedeveloping step and the applying step are performed by an integrated(common) software program. Preferably, the spectral data are receivedfrom the process system in real-time. Further still, the at least onechemometric model is preferably applied to the received spectral data inreal-time to thereby predict one or more properties of the materialbeing monitored.

In response to a predicted property, the method may further comprise thestep of controlling the process system at least partially in response tothe predicted property. This controlling step may include controlling anamount of the material being monitored that is introduced into theprocess system at least partially in response to the predicted propertyor of starting or stopping a new step in the process.

The method may also comprise the step of displaying at least onefeedback graphic user interface on a user computer, the at least onefeedback graphic user interface being configured to provide a user ofthe user computer with real-time feedback as to a quality of the atleast one applied chemometric model. Further still, the method may alsocomprise the step of displaying at least one chemometric modelmodification graphic user interface on the user computer, the at leastone chemometric model modification graphic user interface beingconfigured to receive input from the user that corresponds to amodification of the at least one chemometric model being applied to thereceived spectral data, and wherein the user input receiving stepcomprises receiving chemometric model modification input from the userthrough the at least one chemometric model modification graphic userinterface. Moreover, the method may further comprise the step ofapplying, in response to user input, the modified chemometric model tothe received spectral data to thereby predict a property of the materialbeing monitored. User input can also control the navigation between theat least one feedback graphic user interface and the at least onechemometric model modification graphic user interface (e.g., to or fromsuch GUIs).

Further still, the method may also comprise the steps of (1) retrievingfrom a memory or storage medium at least one of a plurality ofchemometric models that are stored in the memory, and (2) providing theat least one retrieved chemometric model to at least one of the groupconsisting of the developing step and the applying step.

Also disclosed herein is a computer readable medium for performing thismethod. In such an embodiment, the computer readable medium preferablycomprises: (1) a code segment for execution by a processor andconfigured to receive spectral data, the received spectral datacorresponding to the materials being monitored in a process system, (2)a code segment for execution by a processor and configured to develop atleast one chemometric model at least partially in response to user inputreceived via at least one graphical user interface, and (3) a codesegment for execution by a processor and configured to apply at leastone chemometric model to the received spectral data to thereby predict aproperty of the material being monitored.

Further features and advantages of the present invention, as well as thestructure and operation of various embodiments of the present invention,are described in detail below with reference to the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and form a part ofthe specification, illustrate the embodiments of the present inventionand together with the description, serve to explain the principles ofthe invention. In the drawings:

FIG. 1 illustrates a material process system constructed in accordancewith the principles of the present invention;

FIG. 2 illustrates a control loop constructed in accordance with theprinciples of the present invention;

FIG. 3 is a block diagram of a computer program of a preferredembodiment of the present invention;

FIG. 4 illustrates a method in accordance with the principles of thepresent invention;

FIG. 5 illustrates a graphic user interface constructed in accordancewith a preferred embodiment; and

FIGS. 6 a to 6 f illustrate exemplary graphic use interfaces forchemometric model building and modification.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Subtle variations exist between the manner in which differentchemometric models predict material properties from spectral data.Because of these subtle variations, a model derived from a differentmodel or from data from a different stream or process system would beless accurate than one derived from the process system stream to bemonitored. Thus, standard models have been unreliable in the past.

The preferred embodiment comprises a single, unitary computerapplication that preferably utilizes two interfaces. The first interfaceis to a desktop environment through which a user develops chemometricmodels (e.g., builds new models or modifies existing models) using theapplication. The other interface is to the real-time process systemthrough which the application obtains real-time spectral data from thematerials being monitored (e.g. an API in a pharmaceutical manufacturingprocess). The computer application also (preferably in real-time) runs achemometric model against those spectral data and predicts (preferablyin real-time) a property or properties of the material. One of thebenefits provided by the present invention is that a chemometric modelcan be developed directly with coordinated software from spectral dataobtained from the material that the user wants to monitor. In thisfashion the model is more closely customized or tailored to the materialto be monitored than a model developed according to past practices.

Referring to the accompanying drawings in which like reference numbersindicate like elements, FIG. 1 illustrates a material process system 10constructed in accordance with the principles of the present invention.The exemplary process system 10 includes a reactor 12, a reactant source14, a second reactant source 16, a product discharge 18, and typically asource of water 20 or other solvent 22 for flushing and cleaning thesystem 10. The reactants 14 and 16 flow into the reactor 12, mix andreact within the reactor, and flow from the reactor as the productmaterial 18. As is well known in the art, the operation of the processsystem 10 is greatly improved with closed loop control. Thus, the system10 usually includes a control loop with a sensor 24, an analyzer orcontroller 26, and one or more pairs of control members (e.g. valves) 28and 32 along with the controllers 30 and 34 associated with the valves28 and 32. All of these devices are typically interconnected as shown.In operation, the sensor 24 senses the composition (or other property)of the product 18 and transmits a signal representing the composition tothe analyzer or controller 26. The analyzer 26 sends an error signal,which depends on the property's deviation from a desired set-point, tothe valve controllers 30 and 34. The error signal causes the valvecontrollers 30 and 34 to reposition the valves 28 and 32 respectively.In turn, the amount of reactants 14 and 16 flowing into the reactor 12converge on the amounts required to produce the product 18 inconformance with the desired set-point.

In many instances, the process system 10 must be cleaned to preserve theprocess system in a desired cleanliness level (e.g., a desired sterile,sanitary, and an impurity-free condition). For instance, if the reactor12 is a batch reactor, it may be necessary to thoroughly remove theproducts (and byproducts) of one batch before beginning the next batch(which may be for a product 18 having a different formulation than theprevious batch). Thus, many process systems re-circulate the water orsolvent to clean and flush the process system. One common way todetermine when the cleaning cycle is complete is to monitor the cleaningfluid for the presence of the product. When the product concentrationfalls below a pre-determined level, the reactor 12 is considered to beclean. Upon finishing the cleaning cycle, though, residual cleaningfluid may be present in the reactor 12. Further, for closed loop controlof the system 10, it is necessary to know the concentration of theproduct (e.g. an active pharmaceutical ingredient or API) and otherchemicals in the process system 10. This need arises because, as thereaction begins, proceeds, and completes, the concentration of theproduct and other materials will vary.

As will be appreciated by those skilled in art, the process system 10 isnot limited to the production of pharmaceuticals. Further still, processsystem 10 need not even include a reactor. Process system 10 need onlybe a system that performs one or more processes on a material. Forinstance, the process system could be a transport system (e.g. apipeline) or even a product drying system. Thus, the scope of thepresent invention is not limited to the exemplary process system 10shown in FIG. 1.

Nonetheless, as stated previously, it is often desired to determine thecomposition of the material in the system 10 including the concentrationof one or more constituents of the material or product. Often one ormore spectrometers are used as the sensor 24 to determine the materialcomposition. Theoretically, each chemical produces a unique spectrumthat identifies the chemical even if the material is present in lowconcentrations. Of course, the spectrum associated with the product 18is a combination of the individual spectra of all of the chemicalspresent. The analyzer 26 of the preferred embodiment includes anintegrated computer application that allows the user to analyze spectra,develop chemometric models, and to monitor or even control the processsystem 10. Additionally, this integrated computer application preferablyincludes a plurality of graphic user interfaces (GUIs) which allow theuser to perform these operations in one seamless, integratedenvironment. Further still, in a preferred embodiment, the analyzer 26is a personal computer.

With reference to FIG. 2, a closed-loop control system 100 is shown inblock diagram form. The control loop 100 can be used for controllingprocess systems such as those shown in FIG. 1. The control loop 100includes one or more spectrometers 102, a data acquisition device 104, achemometric model 106, a comparator 108, and one or more actuators 110that interface the control loop 100 to the plant process 112 (e.g. theprocess system 10 of FIG. 1). These components are interconnected asshown in FIG. 2. In real-time, the spectrometer 102 measures spectra ofthe material in the process system and transmits a signal 116 that isrepresentative of those spectra to the data acquisition device 104. Thechemometric model 106 receives the signal 116 from the data acquisitiondevice 104 and predicts one or more properties 120 (e.g. theconcentration of a constituent in the process material) of the processmaterial from the signal 118 representing the spectra. Additionally, thechemometric model 106 may also produce goodness of fit information 128with which the user can evaluate the performance of the chemometricmodel 106 in predicting the property 120. In turn, the comparator 108compares the property 120 of the process material to a set-point 122that is preferably supplied by the user. From the set-point 122 and theproperty 120 of the material (or rather the signal representing thatproperty), the comparator generates an error signal “e” to drive theactuator 110. Changes in the output of the actuator 110 that are drivenby the error signal “e” then affect the process system in a manner thatis pre-selected to drive the error signal “e” to zero. Thus, the model106 can be employed in real-time to control a process system 112. Inaddition, the user can modify the model 106 by inputting changes. Ofcourse, the modifications may include the initial operations necessaryto build a new chemometric model 106.

Furthermore, as shown in FIG. 2, a single, unitary, computer application130 is supplied by the current embodiment. The application 130 has twointerfaces. One interface is to the real-time environment and includesan input for receiving the signal 116 that represents the spectra beingsensed by the spectrometer 102. The real-time interface can also includean input for receiving the set-point 122 and an output for transmittingthe error signal “e.” The other interface is to the desktop environmentwherein the user can evaluate the chemometric model 106 using, interalia, the goodness of fit information 128 supplied at the desk topenvironment, and the predicted properties 120 of the process material,and compare these to the analytically determined measurements of theproperty 120 of the process material. If desired, the user can alsomodify (or build) the chemometric model 106 using the interface of theapplication 130 to the desk top environment.

Previously, the chemometric modeling activities occurred in oneapplication and the real-time predictions of the property of the processmaterial occurred in another application and in another computer, orsystem. Because one application was used to perform the chemometricmodeling and another application (and system) was used to predict theproperty of the process material, subtle variations arose between themanner in which the model predicted the property while under development(in a desktop environment) and the manner in which the model actuallypredicts the property (once imported into the real-time environment). Asa result of these subtle variations, chemometric models built withpreviously available systems often proved to be less accurate thanindicated by tests of the chemometric model while still in the desk top,development environment. Thus, once deployed in the real-timeenvironment, these chemometric models delivered disappointing real-timeperformance in predicting the properties of the process material. Inview, of these inaccuracies, the present invention provides a single,unitary computer application with an interface to the real-timeenvironment and another interface to the desk-top environment therebyeliminating the source of these subtle variations that give rise to theinaccuracies.

Turning now to FIG. 3, a top-level block diagram of an exemplarycomputer application 200, or program, that is structured in accordancewith the principles of the preferred embodiment is illustrated. Theexemplary application 200 preferably comprises an interface application202 and a chemometric model development and execution application 204.The chemometric model development and execution application 204preferably performs processing tasks such as building chemometric modelsand applying those models to sensed spectral data. The interfaceapplication 202 preferably interfaces the chemometric modelingapplication 200 with the user and with the incoming spectral data (suchas the data that would be sensed by sensor 24 in system 10 of FIG. 1).While the exemplary application 200 is shown in FIG. 3 as relying on twoapplications 202 and 204 to handle the interfacing and processing tasksrespectively, the application 200 could combine the tasks ofapplications 202 and 204 into a single application without departingfrom the scope of the present invention.

In a preferred embodiment, the interface application 202 and thechemometric model development and execution application 204 are,respectively, the NovaPAC and the NovaMath applications that areavailable from SpectrAlliance, Inc. of St. Louis, Mo. Furthermore, theinterface and chemometric modeling applications 202 and 204 may beconfigured to be installed in, and run concurrently on, a Windows NT,Windows 2000, Windows XP personal computer or equivalent environment.

Interface Application 202:

Interface application 202 preferably comprises a user interface module210 and a process system interface module 212.

The user interface module 210 preferably serves as a desktop environmenton a user's computer that enables the user to access and execute thechemometric model development and execution application 204. Theinterface application 202 is preferably in communication with thechemometric model development and execution application 204 via anyknown data communication technique(s), including but not limited todirect communication and communication via a network such as anintranet, the Internet, a wireless network, or the like. An interfaceapplication 202 that is suitable for use with the preferred embodimentis the NovaPac application available from SpectrAlliance, Inc. of St.Louis, Mo. The interface application is preferably configured to acceptany conventional signal from a spectrometer that conveys the spectraldata gathered by the spectrometer. Furthermore, the interfaceapplication is preferably configured to output a conventional outputsignal indicative of the predicted property (e.g. a 4-20 milli-ampsignal).

Chemometric Model Development and Execution Application 204:

The chemometric model development and execution application 204preferably comprises a chemometric model building module 206, areal-time module 208, and a memory 214. The memory 214 is preferably anexternal memory and includes capacity to store a library of chemometricmodels from which the user can select one, or more, for evaluation,further development, or use in predicting real-time properties. Thebuild module 206 also preferably communicates with the user interfacemodule 210 within the interface application 202 in a bi-directionalmanner. From the user interface module 210, the build module 206receives user inputs to develop (e.g. create, build, modify or edit)chemometric models. In return, the build module 206 transmits to theuser interface module 210 information relevant to the models availablefor development and details regarding the models themselves. At anytime, the user can save a model to the memory 214 or access a model inthe memory 214. Thus, the memory 214 can hold a library of models. Theuser can also indicate, via the user interface module 210, which modelto pass to the real-time module 208.

Turning now to the real-time module 208, the real-time module 208 alsocommunicates bi-directionally with the interface application 202 and,more particularly, with the process system interface 212. In addition,the real-time module 208 receives chemometric models from either thebuild module 206 or the memory 214. The module 208 accepts the model, orotherwise accesses the model, and uses it to monitor and, perhaps,control a real-time system such as process system 10 of FIG. 1. To doso, the module 208 accepts, preferably in real-time, a sensed spectra(or spectrum) from the process system 10 via the process systeminterface 212. The module 208 applies the selected chemometric model tothe spectra (i.e. processes the spectra in accordance with the model)and generates a prediction of the property(s) of the material for whichthe model was developed. In embodiments wherein the process system is tobe controlled in response to the prediction, the real-time module 208preferably also outputs the prediction of the property (e.g. theconcentration of an API) to the process system interface 212. Thereal-time module 208 also generates data for display to the user via theinterface application 202 so that the user is supplied with dataconcerning the real time process system (e.g. the current spectra fromthe real-time process system and other data discussed with reference toFIG. 5).

Preferably, the application 204 also provides to the user indicators ofhow well a particular spectrum “fits” the set of spectra used to buildthe model (the calibration set). These indicators are available asoutputs of the model, and can be handled just like the model's predictedproperty value(s) (e.g., the concentration of one, or more constituentsof the monitored material. For example, for partial least squaresmodels, the application 204 preferably provides two goodness of fitindicators (Mahalanobis distance and X-residual standard deviation). Forsimple linear regression and multiple linear regression models, the usercan use the predicted value of the property itself, which should bewithin the range of known values for the calibration set, to judge howwell the model is performing.

A suitable chemometric model development and execution application 204is the NovaMath application available from SpectrAlliance, Inc. of St.Louis, Mo. Enclosed herein as Exhibit A is a User Guide for the NovaMathapplication. This user guide provides a person skilled in the art withdetailed information on how to make and use application 204 and therelated GUIs described hereinafter.

FIGS. 5 and 6 a to 6 f illustrate exemplary graphic user interfaces(GUIs) associated with the applications 202 and 204 of FIG. 3.Generally, FIG. 5 shows a preferred GUI 500 built and stored with thereal-time module 208 of FIG. 3, whereas FIGS. 6 a to 6 f show preferredGUIs 600 built and stored with the build module 206 of FIG. 3. Becausethe modules 206 and 208 are integrated, the GUIs of FIGS. 5 and 6 a-fprovide the user with seamless access to the full functionality providedby the application 200. Additionally, navigating between the GUIs 500and 600 may be accomplished without opening, or executing, anotherapplication. Further, while data and models may be imported from (andexported to) other applications, the program 200, via the GUIs of FIGS.5 and 6 a-f, provide the user all of the functions needed to analyzespectral data, to build and modify models, to predict properties byrunning a model, and to monitor and control process systems.

Turning now to FIG. 5, a preferred GUI 500 for interfacing the user withthe real-time module 208 is illustrated. The majority of the real-timeGUI 500 is associated with the functions provided by the real-timemodule 208 (of FIG. 3). The real-time GUI 500 includes a viewing area502 that displays the real-time spectral plot 504 of the monitoredmaterial. The spectral plot represents the spectra that are obtainedfrom a spectrometer that monitors the material in a process system suchas the process system 10 shown in FIG. 1. The spectral plot is a measureof, preferably, the absorption of electromagnetic radiation (e.g. nearinfrared light) as it passes through the process material and isgathered by the spectrometer. As shown, the spectral plot indicates thatthe process material absorbs the radiation at some wavelengths more thanit does at other wavelengths. The spectral plots may also measure lightthat is reflected from a sample and then gathered by the spectrometer,as is known in the field of spectroscopy. The resulting shape of thespectral plot is thus indicative of the material in the process systemat the time that the spectra are obtained. From the plot, it istherefore possible to determine the properties of the process material.The real-time GUI 500 also includes another area 506 that containsseveral controls (e.g. buttons) used for providing the user flexibilityin viewing the spectral plot 504 (e.g. zoom and scroll controls).

Additionally, the real-time GUI 500 includes a process control displayarea 508. Process control display area 508 includes a field 510 fordisplaying the current value of a feature of the spectral plot 504 isprovided. Area 508 also includes a pair of controls 512 and 514 to inputhigh and low alarm set-points respectively. These alarm set points allowthe user to cause the integrated application 200 of FIG. 3 to issue anotification, or alarm, should the predicted property deviate above thehigh alarm value or below the low alarm value. The GUI 500 alsopreferably provides another area 516 that includes set of controls thatallow the user to utilize, modify or build chemometric models via thebuild module 206 of FIG. 3. The area 516 includes an indication 518 ofhow many features of the spectral plot(s) shown in the spectral plotdisplay area are determined by the model, a control 520 that enables theuser to select which one of those features will have a data valuedisplayed in field 510, and a control 524 for user selection from amongthe plurality of features identified at 518. The features include, forexample, local maxima, local minimum, and rates of change with respectto the x-axis for the selected spectra. Area 516 also includes control522 to allow the user to enable (and disable) the current model so thatthe model may in effect be turned “on” and “off.” Push button control526 causes a GUI 600 (see FIGS. 6 a to 6 f) associated with thedevelopment module 206 to appear so that the user can study, modify, orbuild the chemometric models stored in the memory 214 of FIG. 3.

As shown by FIGS. 6 a to 6 f, the current embodiment also provides GUIs600 for interfacing the user with a full suite of model developmentfunctions. The model development GUI 600 includes two general displayareas. The first display area 602 includes a variety of controls forviewing selected spectra within plot area 608. The spectra displayed inthe plot area 608 are those from which the user will choose forincorporation into a given chemometric model. Preferably, the displayedspectra are gathered from the spectrometer monitoring the process system(as shown in FIGS. 1 or 2). Preferably, each spectrum has associatedwith it an analytically determined value of the property for which thechemometric model is being built to predict. Thus, these spectra alongwith the analytically determine property values allow the user todevelop an accurate chemometric model (for use in real-time) without theinaccuracies associated with building the chemometric model in oneenvironment (i.e., the desk top environment) and using it to predict theproperty in another environment (i.e., the real-time environment). Thesecond display area 604 includes a variety of controls for buildingand/or modifying (i.e. developing) models.

More particularly, the first display area 602 includes a set of controls606 for setting the position of the cursor in the plot area 608. Inaddition the cursor may be moved to various sample spectra displayed inthe plot area 608 with control 607. The user's actions in the seconddisplay area 604 may also alter the sample spectra displayed, as will bedescribed subsequently. The first display area 602 also includescontrols 610 that allow the user to zoom in on, and zoom out from, thesample spectra displayed in the plot area 608. The first display area602 of the current embodiment also includes a control 612 for approvingmodifications made to the model (via the controls provided in the seconddisplay area 604). Likewise, the first display area 602 includes acontrol 614 for canceling modifications made to the model. Note thatclicking on one of the controls 612 or 614 will cause the GUI 600 toclose (or go to the background of the computer display) and thereal-time GUI 500 (see FIG. 5) to come to the foreground of the computerdisplay. It is worth noting that switching between GUIs 500 and 600 maybe accomplished via other ways known in the art, for example via anynumber of known window navigation techniques that are widely availablein a desktop PC environment.

Second display area 604 includes a plurality of selectable tabs thatallow the user to navigate between various displays associated withdeveloping chemometric models. The selectable tabs include a file tab616, a spectra tab 618, a processing tab 620, a features tab 622, a 3Dgraph tab 624, and a model building tab 626. When the user selects oneof the tabs, additional controls are displayed according to the tabselected. The GUI 600 of FIG. 6 a details area 604 when the file tab 616has been selected. The GUI 600 of FIG. 6 b details area 604 when thespectra tab 618 has been selected. The GUI 600 of FIG. 6 c details area604 when the processing tab 620 has been selected. The GUI 600 of FIG. 6d details area 604 when the features tab 622 has been selected. The GUI600 of FIG. 6 e details area 604 when the 3D graph tab 624 has beenselected, and the GUI 600 of FIG. 6 f details area 604 when the modelbuilding tab 626 has been selected.

As will be appreciated by those skilled in the art, the user willprogress generally in order across the tabs 618, 620, 622, 624, and 626during the course of building a model. However, the user is notrestricted to a particular order, or even one pass through the tabs.Rather, it will be understood that a user can progress through one ormore of the tabs in any desired sequence. Thus, generally a user willselect a file of spectra using tab 616 and select spectra via tab 618.Using the processing tab 620, the user defines the processing to beperformed on the selected spectra. Further, the user can define thefeatures to be included in the model using the features tab 622. Modelbuilding tab 626 allows the user to finalize the building of the modelwhile the 3D graph tab 624 allows the user to view the sample spectra atany time that it may be beneficial to analyze the spectrum (e.g. whilebuilding the model).

With reference now to FIGS. 6 a and tab 616 in particular, selection ofthe file tab 616 provides controls 628 for importing and storing newsample spectra from external data sources (e.g. spreadsheets, files withproprietary formats that are associated with the various spectroscopesuppliers, or their equivalents). The user may also obtain informationconcerning the types of formats that the sample spectra are stored in byselecting the “File Information” button of control 628. Selection of thefile tab 616 also allows a user to perform a computer operation (e.g.the methods of “opening”, “saving”, or “saving as”) on chemometric modelfiles via controls 627 with the path and file name being indicated inthe current method field 629. Also shown is a button 635 that whenselected causes a pop up keyboard window to appear so that, if theapplication is run on a computer with a touch screen, the user can entertext and numeric values via the pop up keyboard. Thus, the modelsmanipulated in accordance with the principles of the present inventionare not limited to spectral files created with any particularproprietary application.

User selection of the spectra tab 618 causes the GUI of FIG. 6 b toappear, thereby providing the user with access to still other controlsfor viewing selected spectra (which are displayed in the spectral plotarea 608) from the set of spectra associated with samples of themonitored material. Area 604 of FIG. 6 b preferably includes a set ofcontrols 630 that allow the user to select a range of spectra from thosestored in the currently selected file. The total number of these spectrais identified in field 633. Further, the spectra selection controls 630allow the user to select a set of spectra (e.g. every fifth spectra) viathe “modulus” input control 631. Control 634 determines how spectraldata are displayed in plot area 608. Area 604 of FIG. 6 b preferablyalso includes a control 632 to allow the user to sort the spectra by avariety of criteria (including the features 651 that will be discussedwith regard to FIG. 6 d). Used in conjunction with the range controls630, the sort control 632 allows the user to sort the sample spectrabased on criteria and select those with the highest, lowest, or someintermediate ranking according to the criteria. Thus, for example, theuser can select those sample spectra with the highest value for theproperty to be predicted and include only these spectra in thechemometric model. Also, the spectra tab 618 causes the selected spectrato be displayed in the plot area 608. The user may also alter how theplot area 608 displays the spectra via the control 634.

FIG. 6 c details area 604 when the processing tab 620 has been selected.More particularly, the area 604 of FIG. 6 c preferably includes severalcontrols 636, 638, 640, 642, 644, 646, and 648. The list control 636includes an ordered list of operations (that together define a processto be performed on the selected sample spectra). Area 604 of FIG. 6 cpreferably also includes controls to add operations to, updateoperations in, delete operations from, or change the order of operationsin the operation list 636 (controls 640, 642, and 644 respectively).More particularly, by selecting an operation in the list 636 and thenselecting the order control 637, the user can move an operation in theordered list 636 up or down in the order. As the user builds the list ofoperations 636, the user can select the function(s) to be performed onthe sample spectra from the list 646 of available functions. If afunction selected from list 646 requires the user to enter aparameter(s) to define the particular function selected, the processingtab 620 also displays controls 638 to allow the user to enter therequired parameter(s). Once the user completes the operations list 636(or at any time during the creating of the list), the user can apply thelist of operations 636 to the selected spectra and view the results viathe control 648 that causes the display area 608 to be updated withplots resulting from the listed operations. Thus, area 604 of FIG. 6 callows the user to define the operations to be performed on the selectedsample spectra. These processes may be used to define features 651 (seeFIG. 6 d) that will be discussed in more detail below.

FIG. 6 d details area 604 when the user has selected the features tab622. This area includes a list 650 of features 651 (e.g. calculatedvalues) of the selected spectra 660 (that is displayed in the plot area608 above). The features 651 may be associated with any combination ofthe selected spectra, the chemometric model, or the spectra arising fromthe monitored material depending on which features and which spectra ormodel the user has selected. For example, the user can define a goodnessof fit indication (e.g. Mahalanobis distance or X-residual standarddeviation for partial least squares models) as a feature. Controls 652,654, and 656 allow the user to add, edit, and delete respectively thefeatures 651 in the features list 650 by selecting one, or more, of thelisted features with (preferably) a pointing device like a mouse andclicking on the appropriate control 652, 654, or 656. The user can alsoindicate, via the checkbox associated with each feature 651 (e.g. thepeak at 1350), which features will be made available for real-timedisplay in field 510 of FIG. 5. Note, that the display area 508 of FIG.5 can be expandable to display more than one feature 651 as indicated bythe user's selections. Control 656 offers for selection a list ofmathematical functions that enable the user to best monitor the processmaterials. Meanwhile, control 658 allows the user to plot the features651 in the plot area 608 as they are being defined. Typically control658 enables the user to view the changes in feature 651 acrosssuccessive spectra, as for example, as a function of time as the processcontinues. These features 651 enable the chemometric model to correlatethe monitored spectrum with the property of interest (e.g. theconcentration of an impurity) in accordance with the users choices indeveloping the chemometric model.

FIG. 6 e displays area 604 when the 3D graph tab 624 has been selected.FIG. 6 e shows that the user may view and analyze the 3 dimensionalgraph 664 of the sample spectra. The axes of the 3 dimensional graph 664may include the wavelength 666 of the light, the intensity of theradiation absorption 668, and the sample spectra number 670. The graph664 therefore allows the user to visually identify trends andcorrelations, especially when used in conjunction with the sort control632 (of FIG. 6 b). Thus, the 3D tab 624 provides a convenient way forthe user to analyze the sample spectra while building the model.

FIG. 6 f details area 604 when the model building tab 626 has beenselected. Area 604 of FIG. 6 f includes a set of controls 672 for eitherchoosing a chemometric model in a pre-existing file or creating a newmodel. Area 604 of FIG. 6 f also includes controls for the followingoperations:

-   drop down list 673 for selecting the type of model to create (e.g.    simple linear regression),-   list box 674 for selecting sample spectra for inclusion in the model    (see FIG. 6 b),-   list 675 of the selectable sample spectra and the corresponding    values of the feature 651.-   Note that a “dummy” feature 651 is listed and labeled as “Stuff at    1350 (nanometers)” for each selectable spectra,-   button 676 which causes the processing tab 620 to be displayed for    defining the processing to be associated with the selected spectra-   button 678 for defining the features 651 (see FIG. 6 d) of each of    the processed spectra via the features tab 622 which is displayed    when the user selects the button 678, button 680 for causing the    chemometric model build module 206 (see FIG. 3) to build the    chemometric model (e.g. incorporating the results of the foregoing    operations in a new, or modified, model)-   button 682 for using the new (or modified model) to show the plots    or tabular results related to the particular type of model that was    previously selected with model type control 673,-   control 684 for saving the current model to a file, and-   control 686 for clearing the current model if the user so desires.

Further area 604 of FIG. 6 f provides the user with the ability toselect for display and editing in list 675, the spectra associated withthe model's calibration set or validation set. This selection is madeusing either the calibration set control 688 or the validation setcontrol 690. Area 604 of FIG. 6 f also includes the following controls:

-   button 696 for adding sample spectra to the calibration set or    validation set as shown in list 675,-   button 698 for editing attributes of a selected sample spectrum and    its feature 651, such as the feature 651 value or the sample name,-   button 700 for deleting a particular spectra from either the    calibration set or the validation set,-   checkboxes 701 for indicating whether the sample will be included in    the next build of the model (or the next validation operation of the    model),-   button 702 for plotting the selected sample spectra in the plot area    608 of the first display area 602, and-   button 704 for displaying a plot of the correlation coefficient of a    selected feature.

Thus, the present invention provides integrated GUIs that include thereal-time GUI 500 of FIG. 5 and the model development GUI 600 of FIGS. 6a to 6 f, the GUI 600 including viewing areas 604 associated with theselectable tabs 616, 618, 620, 622, 624, and 626 that allow the user tobuild and modify chemometric models while also allowing the user toanalyze the model and related spectra, data, and information. Becausethe application provides integrated GUIs, the user is provided with auser friendly, flexible, and integrated environment in which to developand run models for the underlying process system (e.g. system 10 of FIG.1).

In any case, the integrated application 200 (of FIG. 3) provides aseamless environment for users to both develop and apply chemometricmodels. By providing the user with a single unitary engine to bothdevelop and run chemometric models, the present invention reduces theamount of time it takes for a modeler to learn both tasks. Additionally,because the models need not be imported, or otherwise transferred frommodel development software to a separate platform's model applicationsoftware (or vice versa), the present invention streamlines the modeldevelopment and application process. Moreover, both processes (modeldevelopment and application to a real-time system) can be runconcurrently by the user. Thus, the real-time system 10 need not beidled during the development of a new, or improved, chemometric model.Moreover, by allowing the user to build or modify a chemometric modeland run the model in the same processing environment, the presentinvention eliminates the subtle differences that arise from performingthese tasks in different computing environments.

Having described the different components of the preferred embodiment,with reference now to FIG. 4, an exemplary method that is provided bythis preferred embodiment is illustrated. In the method 300, a single,unitary program (such as the chemometric modeling application 200 ofFIG. 3) is used to monitor or control a real-time system (operation302). At some time, in operation 310, the user may desire to eitherbuild or modify a chemometric model. If so, the method 300 continues inoperation 312. Otherwise, the method 300 continues with the monitoringof the system in operation 302. Assuming that the user wishes to developa model, at operation 312, the user accesses the file in memory thatdefines the model or creates a new file. Using the GUIs of FIGS. 6 a-fto access the model development capabilities of application 204, theuser develops the chemometric model by performing one or more of thefollowing operations:

-   1. Modifying the property(s) to be predicted by the model (operation    314);-   2. Adding or removing spectra from the model (operation 316);-   3. Modifying the processes which the model performs on the spectra    (operation 318); or-   4. Other chemometric model development activities known in the art    (operation 320).

When the user desires to save the current model, the method continueswith the user doing so in operation 322. Of course, instead of merelysaving the new, or modified, model the user can direct module 208 (ofFIG. 3) to begin applying the model to the spectra gathered from thereal-time system that is being monitored (see operation 322).

In view of the foregoing, it will be seen that the several advantages ofthe invention are achieved and attained. A user friendly, integratedapplication has been provided that reduces the time a required to buildor modify chemometric models. Also, because all of the functionsnecessary to both develop chemometric models and to run the resultingmodels are provided in an integrated user environment, the “learningcurve” associated with both tasks is lessened.

The embodiments were chosen and described in order to best explain theprinciples of the invention and its practical application to therebyenable others skilled in the art to best utilize the invention invarious embodiments and with various modifications as are suited to theparticular use contemplated.

As various modifications could be made in the constructions and methodsherein described and illustrated without departing from the scope of theinvention, it is intended that all matter contained in the foregoingdescription or shown in the accompanying drawings shall be interpretedas illustrative rather than limiting. Thus, the breadth and scope of thepresent invention should not be limited by any of the above-describedexemplary embodiments, but should be defined only in accordance with thefollowing claims appended hereto and their equivalents.

1. A method for integrating chemometric model development andchemometric model application to a process system, the methodcomprising: receiving spectral data from a process system, the receivedspectral data corresponding to a material being monitored by the processsystem; receiving user input through at least one graphic userinterface; developing at least one chemometric model at least partiallyin response to the received user input; and applying at least onechemometric model to the received spectral data to thereby predict aproperty of the material being monitored; and wherein the developingstep and the applying step are performed by an integrated softwareprogram.
 2. The method of claim 1 wherein the spectral data receivingstep comprises receiving the spectral data from the process system inreal-time.
 3. The method of claim 2 wherein the applying step comprisesapplying the at least one chemometric model to the received spectraldata in real-time to thereby predict a property of the material beingmonitored.
 4. The method of claim 3 further comprising: controlling theprocess system at least partially in response to the predicted property.5. The method of claim 4 wherein the controlling step comprisescontrolling an amount of the material being monitored that is introducedinto the process system at least partially in response to the predictedproperty.
 6. The method of claim 2 further comprising: displaying atleast one feedback graphic user interface on a user computer, the atleast one feedback graphic user interface being configured to provide auser of the user computer with real-time feedback as to a quality of theat least one applied chemometric model.
 7. The method of claim 6 furthercomprising: displaying at least one chemometric model modificationgraphic user interface on the user computer, the at least onechemometric model modification graphic user interface being configuredto receive input from the user that corresponds to a modification of theat least one chemometric model being applied to the received spectraldata; and wherein the user input receiving step comprises receivingchemometric model modification input from the user through the at leastone chemometric model modification graphic user interface.
 8. The methodof claim 7 wherein the applying step further comprises, in response touser input, applying the modified chemometric model to the receivedspectral data to thereby predict a property of the material beingmonitored.
 9. The method of claim 8 further comprising: in response touser input, navigating the user between the at least one feedbackgraphic user interface and the at least one chemometric modelmodification graphic user interface.
 10. The method of claim 2 furthercomprising: retrieving from a memory at least one of a plurality ofchemometric models that are stored in the memory; and providing the atleast one retrieved chemometric model to at least one of the groupconsisting of the developing step and the applying step.
 11. The methodof claim 2 wherein the developing step includes developing at least onenew chemometric model at least partially in response to the receiveduser input.
 12. A system comprising: a first interface for accepting auser input from a desktop environment; a processor in communication withthe first interface to build a first chemometric model using the userinput from the desktop environment; a second interface for accepting aspectral input from a real-time environment, the spectral input beingrepresentative of a material, the processor to predict a property of thematerial using the spectral input from the real-time environment and asecond chemometric model; and a memory in communication with theprocessor to store the first chemometric model and the secondchemometric model.
 13. The system of claim 12, wherein the user input isa selection of a sample spectrum.
 14. The system of claim 12, furthercomprising a real-time process controller associated with the materialand in communication with the second interface.
 15. The system of claim12, wherein the property is the concentration of a constituent of thematerial
 16. The system of claim 12, wherein the first chemometric modelhas a first format, the computer further comprising a third interfacefor accepting a third chemometric model having a format that isdifferent than the format of the first chemometric model.
 17. A computerreadable medium for integrating chemometric model development andchemometric model application to a process system, the computer readablemedium comprising: a code segment for execution by a processor andconfigured to receive spectral data, the received spectral datacorresponding to a material being monitored by a process system; a codesegment for execution by a processor and configured to develop at leastone chemometric model at least partially in response to user inputreceived via at least one graphical user interface; a code segment forexecution by a processor and configured to apply at least onechemometric model to the received spectral data to thereby predict aproperty of the material being monitored.
 18. The computer readablemedium of claim 17 wherein the spectral data receiving code segment isfurther configured to receive the spectral data in real-time.
 19. Thecomputer readable medium of claim 18 wherein the chemometric modelapplying code segment is further configured to apply the at least onechemometric model to the received spectral data in real-time to therebypredict a property of the material being monitored.
 20. The computerreadable medium of claim 18 further comprising: a code segment forexecution by a processor and configured to display at least one feedbackgraphic user interface on a user computer, the at least one feedbackgraphic user interface being configured to provide a user of the usercomputer with real-time feedback as to a quality of the appliedchemometric model.
 21. The computer readable medium of claim 20 furthercomprising: a code segment for execution by a processor and configuredto display at least one chemometric model modification graphic userinterface on the user computer, the at least one chemometric modelmodification graphic user interface being configured to receive inputfrom the user that corresponds to a modification of the chemometricmodel being applied to the received spectral data.
 22. The computerreadable medium of claim 21 further comprising: a code segment forexecution by a processor and configured to, in response to user input,apply the modified chemometric model to the received spectral data tothereby predict a property of the material being monitored.
 23. Thecomputer readable medium of claim 22 further comprising: a code segmentfor execution by a processor and configured to, in response to userinput, navigate the user between the at least one feedback graphic userinterface and the at least one chemometric model modification graphicuser interface.
 24. The computer readable medium of claim 18 wherein thechemometric model applying code segment is further configured to applythe at least one developed chemometric model to the received spectraldata in real-time to thereby predict a property of the material beingmonitored.
 25. The computer readable medium of claim 18 furthercomprising: a code segment for execution by a processor and configuredto (1) retrieve from a memory at least one of a plurality of chemometricmodels that are stored in the memory, and (2) provide the at least oneretrieved chemometric model to at least one of the group consisting ofthe chemometric model developing code segment and the chemometric modelapplying code segment.